#include <deRender_priv.hpp>
Inheritance diagram for deRender:


Public Member Functions | |
| deRender (void) | |
| ~deRender (void) | |
| deBoolean | SetRenderFlag (IdeRender::RenderFlag_t Flag) |
| deBoolean | SetStencilState (IdeDriver *pDriver, StencilType_t Stencil, DWORD Ref, DWORD X=0, IdeDriver::RenderCmpFunc Comparison=IdeDriver::COMPARE_ALWAYS, IdeDriver::RenderState StencilTest=IdeDriver::RENDER_STENCILPASS, DWORD StencilMask=0xff, DWORD WriteMask=0xff) |
| deBoolean | Render (IdeCamera *cam, deDouble DeltaTime, deBoolean UseSG, deBoolean ClearColorBuffer, deBoolean BeginFrame, deBoolean EndFrame) |
| deBoolean | RenderTexture (IdeBitmap *Target, IdeCamera *cam, deDouble DeltaTime) |
| deBoolean | BeginFrame (HWND WindowHandle, deBoolean ClearColorBuffer) |
| deBoolean | EndFrame (HWND WindowHandle, deDouble DeltaTime) |
| void | RenderPrepBuffer (deRenderObject &obj) |
| IdeDriver * | CurrentPassDriver () |
| void | RenderPrepBatch (long Level, IdePortal *Portal, deRect &Viewport, deTransformInfo *PortalPos, deTransformInfo *Concat) |
| deDouble | GetTimeStep () |
| void | SetDriverPath (const char *RelativePath) |
| set the relative path that contains Destiny3D driver files (defaults to "." which is current directory) | |
| IdeDriverLoad * | GetDriverLoad () |
| returns a pointer to internally-held IdeDriverLoad interface | |
| IdeDriver * | AttachToWindow (HWND hWnd, char *DriverName="Direct3D8") |
| deBoolean | DetachFromWindow (HWND hWnd) |
| detach and destroy a driver attached to the specified window | |
| void | UpdateWindow (HWND hWnd) |
| update the driver's knowledge of the window's client rect, ie after a WM_SIZE message is received | |
| void | UpdateDisplay () |
| deBoolean | LoadDriver (HWND hWnd, IdeDriver::deDisplay *Display, char *DriverName) |
| deBoolean | GetResolution (IdeDriver *pDriver, long Adapter, long EntryNum, long *Width, long *Height, long *RefreshRate) |
| deBoolean | QueryFormat (IdeDriver *pDriver, IdeDriver::deDisplay *Display, deBoolean PreferStencil) |
| void | SetBGColor (deARGB color) |
| void | SetMaxTPortalDepth (long Depth) |
| void | SetMaxLights (long MaxHWLights, long MaxTexLights) |
| deBoolean | ClearBackground (HWND hWnd, deARGB color=0x00000000, deBoolean ClearZ=DE_TRUE) |
| clear the entire color-buffer to a specified color, possibly also clearing the Z-buffer | |
| void | EnableTexturing (deBoolean Enabled) |
| enable or disable texturing on all geometry rendered through this interface | |
| deBoolean | Use2DCollection (HWND hWnd, Ide2DCollection *Collection) |
| Ide2DCollection * | Get2DCollection (HWND hWnd) |
| void | SetStatStruct (deRenderStats *StatStruct) |
| deBoolean | Screenshot (HWND hWnd, const char *filename, long ScreenSizes) |
| long | GetFrameNum () |
Private Types | |
| typedef deTBST< deRenderObject, 3 > | t_ObjectTree |
Private Member Functions | |
| deBoolean | RenderWaterMark (IdeDriver *pDriver) |
| IdeDriver * | GetDriver (HWND hWnd) |
| deBoolean | InitDriver (IdeDriver *driver, HWND hWnd, IdeDriver::deDisplay *display, deBoolean ResetOnly) |
| void | SetInFrame (HWND hWnd, deBoolean InFrame) |
| deBoolean | IsInFrame (HWND hWnd, deBoolean ErrorVal) |
| IdeDriver * | SetupRenderTarget (IdeBitmap *Target, IdeCamera *cam) |
| deBoolean | SetSubViewport (IdeDriver *pDriver, IdeCamera *cam, deRect SubRect) |
| deBoolean | SetScissorRect (IdeDriver *pDriver, deRect ScissorRect) |
| deBoolean | RenderGeometry (IdeDriver *pDriver, IdeSceneGraph *SG, IdeCamera *c, deDouble DeltaTime, deBoolean ClearColorBuffer, deBoolean BeginFrame, deBoolean EndFrame) |
| deBoolean | CheckColorFormat (IdeDriver::BPP Bpp) |
| deBoolean | CheckDepthFormat (IdeDriver::ZPP Zpp, deBoolean Windowed) |
| deBoolean | RenderBatch (deRenderPassInfo *pInfo) |
Static Private Member Functions | |
| void | DestroyDriverLinkages () |
Private Attributes | |
| IdeRenderTexture * | m_WaterMarkTex |
| IdeVertexBuffer * | m_WaterMarkVB |
| deTList< deRenderBatch > | m_RenderBatches |
| deTStack< IdeDriver * > | m_CurrentPassDriver |
| deDouble | m_CurrentTimeStep |
| deBoolean | m_TexturesEnabled |
| deBoolean | m_RenderMeshOverFill |
| deBoolean | m_RenderSolidWireframe |
| long | m_FillState |
| long | m_CullState |
| deARGB | m_BGColor |
| deRenderStats * | m_RenderStats |
| deString | m_DriverPath |
| long | m_FrameNum |
| long | m_TPortalDepth |
| long | m_MaxHWLights |
| long | m_MaxTexLights |
| long | m_LightsEncountered |
| IdeRenderLight * | m_LightsPerPass [(8)] |
| IdeRenderTexture * | m_PassTexture |
Static Private Attributes | |
| deRenderStats | s_RenderStats |
| deRender * | s_deRenderSingleton = NULL |
| IdeDriverLoad * | s_DriverLoad = NULL |
| IdeRenderTexture * | s_BlankTex = NULL |
| IdeRenderMaterial * | s_BlankMat = NULL |
| deTArray< DriverInfo > | m_DriverList |
Friends | |
| IdeRender * | IdeRender_GetPtr () |
| get a pointer to an IdeRender singleton. | |
| deBoolean | IdeRender_Initialize () |
| initialize the Render system | |
| void | IdeRender_Destroy () |
| destroy the IdeRender singleton | |
| void | IdeRender_DestroyDriverLinkages () |
| release all drivers held by IdeDriver | |
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
attach a driver to the specified window. The driver will not be ready for rendering
Implements IdeRender. |
|
||||||||||||
|
begin a frame before rendering geometry.
Implements IdeRender. |
|
|
|
|
||||||||||||
|
|
|
||||||||||||||||
|
clear the entire color-buffer to a specified color, possibly also clearing the Z-buffer
Implements IdeRender. |
|
|
Implements IdeRender. |
|
|
|
|
|
detach and destroy a driver attached to the specified window
Implements IdeRender. |
|
|
enable or disable texturing on all geometry rendered through this interface
Implements IdeRender. |
|
||||||||||||
|
end a frame and present the back-buffer to the screen
Implements IdeRender. |
|
|
Get the 2D collection that is being used by the driver attached to specified window. This method does NOT invoke Claim() on the returned collection, but user code may do so. Implements IdeRender. |
|
|
|
|
|
returns a pointer to internally-held IdeDriverLoad interface
Implements IdeRender. |
|
|
get the current frame ID number. clamped to [0 <-> 2^31-1] Implements IdeRender. |
|
||||||||||||||||||||||||||||
|
check a driver-enumerated resolution
Implements IdeRender. |
|
|
Implements IdeRender. |
|
||||||||||||||||||||
|
|
|
||||||||||||
|
|
|
||||||||||||||||
|
load a driver up and prepare it for rendering
Implements IdeRender. |
|
||||||||||||||||
|
a rather high-level method of finding a format close to what you want for z-buffer.
Implements IdeRender. |
|
||||||||||||||||||||||||||||
|
Render a scene from a given vantage point, possibly doing some cleanup work with optional params
Implements IdeRender. |
|
|
|
|
||||||||||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||
|
Implements IdeRender. |
|
|
Implements IdeRender. |
|
||||||||||||||||
|
Just like Render() except instead of rendering to the screen, it renders to a texture. the texture to be used is handled through the Target parameter, and the texture on the video hardware after the render will not match the bitmap in system memory. BeginFrame should still be called before this method, so that statistics are properly handled. The camera's viewport will be used when rendering to the texture, so the camera viewport must be the correct size for the texture being rendered into. However, the aspect ratio of the camera can be locked to something other than width/height so that the texture can be mapped in a way that doesn't require it to be viewed as square.
Implements IdeRender. |
|
|
|
|
||||||||||||||||
|
Implements IdeRender. |
|
|
set the color that the color-buffer will be cleared to. ie, 0x00102030 will set the color to 16 red intensity, 32 green intensity, and 48 blue intensity out of a maximum intensity of 255 Implements IdeRender. |
|
|
set the relative path that contains Destiny3D driver files (defaults to "." which is current directory)
Implements IdeRender. |
|
||||||||||||
|
|
|
||||||||||||
|
Implements IdeRender. |
|
|
set the maximum depth of T-portal progression. Each T-Portal clears a portion of the screen as part of the rendering process, so using a high number can adversely affect your framerate. Default value = 8. Implements IdeRender. |
|
|
set a flag for the next call to Render to use. see IdeRender::RenderFlag_t for notes on usage Implements IdeRender. |
|
||||||||||||
|
|
|
|
call before BeginFrame with a user-handled instance of the structure to be filled with information. the data will be valid after a call to Render() or EndFrame() Implements IdeRender. |
|
||||||||||||||||||||||||||||||||||||
|
Set a pre-defined stencil method. notes on how stenciling works and what it does:
Implements IdeRender. |
|
||||||||||||||||
|
|
|
||||||||||||
|
|
|
|
Implements IdeRender. |
|
|
update the driver's knowledge of the window's client rect, ie after a WM_SIZE message is received
Implements IdeRender. |
|
||||||||||||
|
Specify a user-handled 2D collection for a driver attached to specified window to use. This method invokes Collection->Claim(), and then Release() on its currently held collection. Implements IdeRender. |
|
|
destroy the IdeRender singleton
|
|
|
release all drivers held by IdeDriver
|
|
|
get a pointer to an IdeRender singleton.
|
|
|
initialize the Render system
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.3-rc3